import numpy as np

# 生成时间序列
duration = 0.01  # 0.01秒
sample_rate = 32000  # 32kHz采样频率
t = np.linspace(0, duration, int(sample_rate * duration), endpoint=False)

# 生成正弦和余弦信号
freq = 1000  # 1kHz频率
amplitude = 1
sin_wave = amplitude * np.sin(2 * np.pi * freq * t)
cos_wave = amplitude * np.cos(2 * np.pi * freq * t)

# 验证平方和是否为常数
square_sum = sin_wave**2 + cos_wave**2
print(f"平方和的最小值: {np.min(square_sum):.6f}")
print(f"平方和的最大值: {np.max(square_sum):.6f}")
print(f"平方和是否为常数: {np.allclose(square_sum, 1)}")

# 验证不正交的情况（不同频率）
sin_wave2 = amplitude * np.sin(2 * np.pi * 500 * t)  # 500Hz
cos_wave2 = amplitude * np.cos(2 * np.pi * 1000 * t) # 1000Hz
square_sum2 = sin_wave2**2 + cos_wave2**2
print(f"不同频率的平方和是否为常数: {np.allclose(square_sum2, 1)}")
print(f"平方和的最小值:{np.min(square_sum2):.6f}")
print(f"平方和的最大值: {np.max(square_sum2):.6f}")